// import { useEffect, useMemo, useRef } from 'react';

// import { useAntdTable, useRequest } from 'ahooks';
// import { Button, Input, Select, Table, Tag } from 'antd';
// import { EChartsType } from 'echarts';

// import { ChartOption } from '@/components/chart';
// import Bar from '@/components/chart/bar';
// import Filter from '@/components/filter';

// import { TimeSort } from '@/enum';
// import { orgUserInfoVoPage } from '@/services/base/yonghuguanlixitongyonghujiekou';
// import {
//   proRegularWorkRecordPage,
//   proRegularWorkRecordStatistics
// } from '@/services/bizApi/shengchandingqigongzuojilujiekou';

// import { StatusObj } from '../handle';
// import styles from './index.module.scss';

// /** 该模块增删改查对象 */
// export type BizObject = BIZAPI.ProRegularWorkEntity;

// const Statistics = () => {
//   const instance = useRef<EChartsType>();
//   const [filter] = Filter.useForm();
//   const userInfo = useRequest(
//     async () => {
//       const res = await orgUserInfoVoPage({ page: 1, size: 1000 });

//       return res?.data?.records;
//     },
//     {
//       refreshDeps: []
//     }
//   );
//   const table = useAntdTable(
//     async ({ current, pageSize }, { id, ...formData }) => {
//       const res = await proRegularWorkRecordPage({
//         ...formData,
//         ...id,
//         page: current,
//         size: pageSize,
//         timeSort: TimeSort.倒序
//       });

//       return {
//         list: res.data?.records || [],
//         total: res.data?.total || 0
//       };
//     },
//     {
//       form: filter
//     }
//   );

//   const onSearch = () => {
//     table.search.submit();
//   };

//   const onReset = () => {
//     table.search.reset();
//   };
//   const statisticsData = useRequest(
//     async () => {
//       const res = await proRegularWorkRecordStatistics();

//       return res?.data;
//     },
//     {
//       refreshDeps: []
//     }
//   );
//   const options = useMemo(() => {
//     const option = {
//       grid: {
//         show: false
//       },
//       legend: {
//         show: false
//       },
//       tooltip: {
//         trigger: 'axis',
//         // axisPointer: {
//         //   type: 'cross'
//         // },
//         formatter: function (params: any) {
//           return params[0].name + ' : ' + params[0].value;
//         },
//         // formatter: '{b}:{c}',
//         textStyle: {
//           color: '#fff'
//         }
//       },
//       xAxis: {
//         type: 'category',
//         data: statisticsData?.data?.map((item) => item?.statusDesc)
//       },
//       yAxis: {
//         type: 'value'
//       },
//       series: [
//         {
//           data: statisticsData?.data?.map((item) => item?.count),
//           type: 'bar',
//           barWidth: 100
//         }
//       ]
//     } as ChartOption;
//     return option;
//   }, [statisticsData?.data]);

//   useEffect(() => {
//     // 监听鼠标滑入事件
//     instance.current?.on('mouseover', (e) => {
//       const getStatus = (v: string) => {
//         if (v === '待确认') return 1;
//         if (v === '待处理') return 2;
//         if (v === '已完成') return 3;
//         if (v === '已取消') return 4;
//         return undefined;
//       };
//       filter.setFieldsValue({ ...filter.getFieldsValue(), status: getStatus(e.name) });
//       table.search.submit();
//     });
//     // 监听鼠标滑出事件
//     instance.current?.on('mouseout', (e: any) => {
//       // table.search.reset();
//     });
//   }, []);

//   return (
//     <>
//       <div>完成情况统计</div>
//       <div className={styles['chart']}>
//         <Bar instance={instance} option={options} data={[]} />
//       </div>
//       {/* 筛选 */}
//       <Filter onFinish={onSearch} form={filter}>
//         <Filter.Item name="dutyUserId">
//           <Select
//             style={{
//               width: 160
//             }}
//             allowClear
//             placeholder="请选择负责人"
//             showSearch={true}
//             optionFilterProp="label"
//             options={
//               userInfo?.data?.map((item) => {
//                 return {
//                   label: item?.fullName,
//                   value: item?.id
//                 };
//               }) || []
//             }
//           />
//         </Filter.Item>
//         <Filter.Item name="maintainUserId">
//           <Select
//             style={{
//               width: 160
//             }}
//             allowClear
//             placeholder="请选择维护人"
//             options={
//               userInfo?.data?.map((item) => {
//                 return {
//                   label: item?.fullName,
//                   value: item?.id
//                 };
//               }) || []
//             }
//           />
//         </Filter.Item>
//         <Filter.Item name="executionSituation">
//           <Input placeholder="请输入执行情况" />
//         </Filter.Item>
//         <Filter.Item name="status">
//           <Select
//             style={{
//               width: 160
//             }}
//             allowClear
//             placeholder="请选择状态"
//             options={[
//               { value: 1, label: '待确认' },
//               { value: 2, label: '待处理' },
//               { value: 3, label: '已完成' },
//               { value: 4, label: '已取消' }
//             ]}
//           />
//         </Filter.Item>

//         <Filter.Item>
//           <Button htmlType="submit" disabled={table.loading}>
//             搜索
//           </Button>
//         </Filter.Item>

//         <Filter.Item>
//           <Button onClick={onReset} disabled={table.loading}>
//             重置
//           </Button>
//         </Filter.Item>
//       </Filter>
//       {/* end 筛选 */}

//       {/* 表格 */}
//       <Table<BizObject>
//         size="small"
//         columns={[
//           {
//             title: '序号',
//             dataIndex: 'index',
//             align: 'center',
//             width: 60,
//             render: (_text, _record, index) => index + 1
//           },
//           {
//             title: '工作内容',
//             dataIndex: 'workContent'
//           },
//           {
//             title: '负责人',
//             dataIndex: 'dutyUserName'
//           },
//           {
//             title: '维护人',
//             dataIndex: 'maintainUserName'
//           },
//           {
//             title: '状态',
//             dataIndex: 'status',
//             render: (v) => {
//               const obj = StatusObj.get(v);

//               if (obj) {
//                 return <Tag color={obj.color}>{obj.text}</Tag>;
//               }

//               return emptyText;
//             }
//           },
//           {
//             title: '执行情况',
//             dataIndex: 'executionSituation'
//           },
//           {
//             title: '计划执行时间',
//             dataIndex: 'planExecutionTime'
//           },
//           {
//             title: '计划审查时间',
//             dataIndex: 'planReviewTime'
//           },
//           {
//             title: '执行期限',
//             dataIndex: 'executionPeriod'
//           },
//           {
//             title: '取消原因',
//             dataIndex: 'cancelReason'
//           }
//         ]}
//         scroll={{
//           x: 'max-content'
//         }}
//         rowKey="id"
//         bordered
//         {...table.tableProps}
//         pagination={{
//           ...table.tableProps.pagination,
//           showTotal: (total) => `共 ${total} 条`,
//           showQuickJumper: true,
//           showSizeChanger: true,
//           pageSizeOptions: ['10', '20', '50', '100']
//         }}
//       />
//       {/* end表格 */}
//     </>
//   );
// };

// export default Statistics;
